package kpage83;

public class Test01 {
	
	public static void main(String [] args){
		// 1. 다음 for 문을 이요한 반복문에서 잘못된 부분을 찾아 고쳐라.
		
		// int i = 0;
		// for(int j = 0; j<10; j++);
		//  i = i + 1;
		
		int i = 0;
		for(int j = 0; j<10;j++);
		i = i + 1;
		
		
		
		
		
		// 2. 다음 프로그램의 출력 결과는?
		
//		int i = 0;
//		while(i<100){
//			i = i +2;
//		}
//		System.out.println(i);

		int i = 0;
		while(i<100){
			i = i +2;
			
		}
		
		System.out.println(i);

		// 3. 다음 for 문을 do-while 문으로 바꾸어라.
		
//		for (int j =0 , k = 0 ; j <= 10; j++, k+=3)
//			System.out.println(k);

		for (int j =0 , k = 0 ; j <= 10; j++, k+=3)
			System.out.println(k);
		
		// 4. 다음 while 문은 문법적 오류는 없으나 논리적 오류가 있다. 이를 지적하고 올바르게 고쳐라.
		
//		int i = 0;
//				int j = 0;
//				while (i<100){
//					if (i%2 == 0)
//						continue;
//					else
//						j += i++;
//				}
				
				int i = 0;
				int j = 0;
				while (i<100){
					if (i%2 == 0)
						continue;
					else
						j += i++;
				}
				
				
				
		// 5. 다음 while 문은 문법적 오류는 없으나 논리적 오류가 있다. 이를 지적하고 올바르게 고쳐라.
				
//				int i = 0;
//				int j = 0;
//				while (i<100){
//					if(i%2 ==0)
//						continue;
//					else
//						j += i++;
					
					int i = 0;
					int j = 0;
					while (i<100){
						if(i%2 ==0)
							continue;
						else
							j += i++;
						
		// 6. 다음 프로그램은 문법적으로 오류가 있다. 잘못된 것은 무엇인가?
//					for(int i = 0, j = 0; i<100; i++){
//						j += i ;
//					}
//					System.out.println(j);
					
					for(int i = 0, j = 0; i<100; i++){
						j += i ;
					}
					System.out.println(j);
					
		// 7. 6번 문제의 소스에서 continue를 break로 변경하였을 때 출력 결과는 무엇인가?
					
					
		
		// 8. 다음 프로그램 실행 후 출력 결과는?
//					int i = 0, k = 0;
//					for (i = 1; i < 100; i++) {
//						k += i;
//						if (k>100)
//							break;
//					}
//					System.out.println(i);
					
					int i = 0, k = 0;
					for (i = 1; i < 100; i++) {
						k += i;
						if (k>100)
							break;
					}
					System.out.println(i);
					
			// 9. 다음 프로그램의 출력 결과는?
//					int i, j;
//					int sum = 0;
//					
//					
//					loop:
//						for (i = 1; i <= 30; i++){
//							for (j = 1; j <= 24; j++){
//								sum++;
//								if(sum == 100){
//									System.out.print(i + "일째" + j + "시까지 누적된 시간이" + sum + "시간 입니다.");
//									break loop;
//								}
								
								
								
								int i, j;
								int sum = 0;
								
								
								loop:
									for (i = 1; i <= 30; i++){
										for (j = 1; j <= 24; j++){
											sum++;
											if(sum == 100){
												System.out.print(i + "일째" + j + "시까지 누적된 시간이" + sum + "시간 입니다.");
												break loop;
											}
								
			// 10. 10개의 문자형 원소를 갖는 배열 c를 선언하고 배열을 생성하라.
											
			// 11. 0부터 5까지의 정수 값으로 초기화 된 정수 배열 i를 선언하고 생성하라.
											
			// 12. 다음 소스의 출력 결과는?
//					int i [][] = {{1}, {1,2,3}, {1}, {1,2,3,4}, {1,2}};
//					for (int j = 0; j<i, lengtj; j++)
//						System.out.println(i[j].length);
					
					int i [][] = {{1}, {1,2,3}, {1}, {1,2,3,4}, {1,2}};
					for (int j = 0; j<i, lengtj; j++)
						System.out.println(i[j].length);
					
			// 13. 다음 소스에서 잘못된 부분은?
//					int myArray[10];
//					myArray = new int [10];
//					myArray[0] = 3;
//					myArray[1] =  myArray[0]+1;

					int myArray[10];
					myArray = new int [10];
					myArray[0] = 3;
					myArray[1] =  myArray[0]+1;
					
			// 14.  다음 소스에서 잘못된 부분은?
					int myArray[] = {1,2,3,4,5};
					myArray[myArray.length] = 0;
			
			// 15. 다음 그림과 같은 구조를 가지는 float 타입의 배열을 선언하라.
					■■■■
					■■
					■■■
					■■■■
					
 								
			// 16. 아래와 같이 Multiply 라는 프로그램에 두개의 정수를 인자로 주어 곱을 구하는 프로그램을 작성하였다.
					public class Multiply {
						public static void main (String[]args){
							int result = 0;
							
							result = args[0] * args[1];
							System.out.println("두 수의 곱은 :" + result);
						}
					}
			          // 다음과 같이 실행하였을 때 프로그램은 실행 중 오류가 발생하였다. 소스에서 잘못된 부분을 수정하라.
						// c:\>java multiply 10 5
			// 17. 다음 프로그램을 실행하면 어떤 예외가 발생하는가? 예외 처리를 하여 프로그램이 종료되지 않도록 하라.
					
					public class ExceptionTest {
						public static void main(String [] args) {
							
							int [] intArray = new int[10];
							for(int i = 0; i <= intArray.length; i++) {
								intArray [i] = i;
								System.out.println("intArray[" + i +"]" + "=" + intArray[i]);
								
							}
						}
					}
					
					
								}
								
							}
							
				
					
					}
				
				}
		
		
		
	}
	
